package com.shensi.adminCollect.domain.customer;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.shensi.adminCollect.common.annotation.Excel;
import com.shensi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 客户电子会员卡消费记录对象 customer_card_record_consumption
 *
 * @author qujia
 * @date 2021-04-13
 */
public class CustomerCardRecordConsumption extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 消费单号 */
    @Excel(name = "消费单号")
    private String orderNo;

    /** 微信用户唯一标识 */
    private String unionId;

    /** 会员号ID */
    @Excel(name = "会员号ID")
    private String customerNo;

    /** 客户名 */
    @Excel(name = "客户名")
    private String customerName;

    /** 电子会员卡消费充值类型：+，充值；-，消费； */
    private String usageType;

    /** 电子会员卡充值消费类型：1.微信；2.POS机 */
    private String payType;

    /** 油类：2.柴油；1.汽油； */
    private String cardOilsType;

    /** 消费金额 */
    @Excel(name = "消费金额")
    private BigDecimal amt;

    /** 余额 */
    @Excel(name = "余额")
    private BigDecimal balance;

    /** 油站ID */
    private Long stationId;

    /** 油站名称 */
    private String stationName;

    /** 是否消费成功：0，未成功；1，成功 */
    private String status;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date payDate;

    public Date getPayDate() {
        return payDate;
    }

    public void setPayDate(Date payDate) {
        this.payDate = payDate;
    }

    public BigDecimal getBalance() {
        return balance;
    }

    public void setBalance(BigDecimal balance) {
        this.balance = balance;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setOrderNo(String orderNo)
    {
        this.orderNo = orderNo;
    }

    public String getOrderNo()
    {
        return orderNo;
    }
    public void setUnionId(String unionId)
    {
        this.unionId = unionId;
    }

    public String getUnionId()
    {
        return unionId;
    }
    public void setCustomerNo(String customerNo)
    {
        this.customerNo = customerNo;
    }

    public String getCustomerNo()
    {
        return customerNo;
    }
    public void setCustomerName(String customerName)
    {
        this.customerName = customerName;
    }

    public String getCustomerName()
    {
        return customerName;
    }
    public void setUsageType(String usageType)
    {
        this.usageType = usageType;
    }

    public String getUsageType()
    {
        return usageType;
    }
    public void setPayType(String payType)
    {
        this.payType = payType;
    }

    public String getPayType()
    {
        return payType;
    }
    public void setCardOilsType(String cardOilsType)
    {
        this.cardOilsType = cardOilsType;
    }

    public String getCardOilsType()
    {
        return cardOilsType;
    }
    public void setAmt(BigDecimal amt)
    {
        this.amt = amt;
    }

    public BigDecimal getAmt()
    {
        return amt;
    }

    public Long getStationId() {
        return stationId;
    }

    public void setStationId(Long stationId) {
        this.stationId = stationId;
    }

    public void setStationName(String stationName)
    {
        this.stationName = stationName;
    }

    public String getStationName()
    {
        return stationName;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("orderNo", getOrderNo())
                .append("unionId", getUnionId())
                .append("customerNo", getCustomerNo())
                .append("customerName", getCustomerName())
                .append("usageType", getUsageType())
                .append("payType", getPayType())
                .append("cardOilsType", getCardOilsType())
                .append("amt", getAmt())
                .append("createTime", getCreateTime())
                .append("stationId", getStationId())
                .append("stationName", getStationName())
                .append("status", getStatus())
                .toString();
    }
}
